package com.lzh.persevere.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lzh.persevere.model.entity.Role;
import com.lzh.persevere.model.qo.PageModelQO;
import com.lzh.persevere.model.ro.role.EditRoleRO;
import com.lzh.persevere.model.vo.role.RoleMenuInfoVO;

import java.util.Map;


/**
 * 菜单权限表(SysRole)表服务接口
 *
 * @author luzhiheng
 * @since 2023-12-28 16:14:28
 */
public interface RoleService extends IService<Role> {

    /**
     * 分页查询
     *
     * @param qo 查询参数
     * @return Map<String, Object>
     */
    Map<String, Object> pageList(PageModelQO qo);

    /**
     * 新增
     *
     * @param ro 新增参数
     * @return Boolean
     */
    Boolean editRole(EditRoleRO ro);

    /**
     * 删除
     *
     * @param id 删除id
     * @return Boolean
     */
    Boolean deleteRole(Long id);

    /**
     * 查询角色菜单
     *
     * @param id 角色id
     * @return RoleMenuInfoVO
     */
    RoleMenuInfoVO findRoleMenuList(Long id);
}

